package chain_of_responsibility_pattern;

/**
 * 兽人指挥官类，继承自请求处理者，用于处理特定类型的请求。
 * @author 申书航
 * @version 1.0
 */
public class OrcCommander extends RequestHandler{

    /**
     * 构造函数，设置下一个请求处理者。
     * @param next 下一个处理者
     */
    protected OrcCommander(RequestHandler next) {
        super(next);
    }

    /**
     * 返回处理者的名字。
     * @return 处理者的名字
     */
    @Override
    public String name() {
        return "兽人指挥官";
    }

    /**
     * 处理请求的方法，如果请求类型为保卫城堡，则进行处理。
     * @param req 请求对象
     */
    @Override
    public void handleRequest(Request req) {
        if (req.getRequestType() == RequestType.DEFEND_CASTLE) {
            printHandling(req);
            req.markHandled();
            return;
        }
        super.handleRequest(req);
    }
}
